/**      
 * @file		truthTable.cpp
 * @description		This sample demonstrates the results that 
 *			are given from the use of the logical OR and
 *			the logical AND. This are short circuit operators
 *			the AND and the OR. There is also the NOT operator
 *			which is not a short circuit operator.
 * @course		CSCI 123 Section 00000
 * @assignment		Sample 2
 * @date		mm/dd/yyyy
 * @author		Brad Rippe (00000000) brippe@fullcoll.edu
 * @version		1.0
 */
#include <iostream>
using namespace std;

/**
 * @return zero if the application executes successfully
 */
int main() {
	cout << "Logical AND (&&)\n";
	cout << "false && false: " << (false && false) << endl;
	cout << "false && true: " << (false && true) << endl;
	cout << "true && false: " << (true && false) << endl;
	cout << "true && true: " << (true && true) << "\n\n";

	// create truth table for || (logical OR) operator
	cout << "Logical OR (||)\n";
	cout << "false || false: " << (false || false) << endl;
	cout << "false || true: " << (false || true) << endl;
	cout << "true || false: " << (true || false) << endl;
	cout << "true || true: " << (true || true) << "\n\n";
	
	// create truth table for ! (logical negation) operator
	cout << "Logical NOT (!)\n" << endl;
	cout << "!false: " << (!false) << endl;
	cout << "!true: " << (!true) << endl;

	return 0;
}
